package drone.basis.dictionary ;

import java.math.RoundingMode ;

public enum CollectDict
{

	EUA ( "电量" , "做差" , 2 , RoundingMode.FLOOR , 99999999L , false , "kW·h" , "度" , false , true , true , true , true , "1" ) ,
	WUA ( "水量" , "做差" , 2 , RoundingMode.FLOOR , 99999999L , false , "㎥" , "吨" , false , true , true , true , true , "2" ) ,
	HUA ( "热量" , "做差" , 2 , RoundingMode.FLOOR , 99999999L , false , "GJ" , "吉焦" , false , true , true , true , true , "3" ) ,
	TFH ( "运行台时" , "求和" , 2 , RoundingMode.FLOOR , 99999999L , false , "h" , "时" , false , true , true , true , true , "4" ) ,
	EUS ( "综合电量" , "最新" , 2 , RoundingMode.FLOOR , 99999999L , false , "kW·h" , "度" , false , true , true , true , true , "5" ) ,
	WUS ( "综合水量" , "最新" , 2 , RoundingMode.FLOOR , 99999999L , false , "㎥" , "吨" , false , true , true , true , true , "6" ) ,
	HUS ( "综合热量" , "最新" , 2 , RoundingMode.FLOOR , 99999999L , false , "GJ" , "吉焦" , false , true , true , true , true , "7" ) ,
	EWP ( "吨水电耗" , "最新" , 3 , RoundingMode.FLOOR , 99999999L , false , "T/Q" , "吨水电耗" , false , true , true , true , true , "8" ) ,
	VAL ( "检测值" , "最新" , 2 , RoundingMode.FLOOR , 99999999L , true , "Val" , "值" , false , true , true , true , true , "9" ) ,
	EFA ( "累积电量" , "最新" , 2 , RoundingMode.FLOOR , 9999999999L , true , "kW·h" , "千瓦时" , false , true , true , true , true , "10" ) ,
	WFA ( "累计流量" , "最新" , 2 , RoundingMode.FLOOR , 9999999999L , true , "㎥" , "立方" , false , true , true , true , true , "11" ) ,
	HFA ( "累计热量" , "最新" , 2 , RoundingMode.FLOOR , 9999999999L , true , "GJ" , "吉焦" , false , true , true , true , true , "12" ) ,
	WPF ( "正累计流量" , "最新" , 2 , RoundingMode.FLOOR , 9999999999L , true , "㎥" , "立方" , false , true , true , true , true , "13" ) ,
	WNF ( "负累计流量" , "最新" , 2 , RoundingMode.FLOOR , 9999999999L , true , "㎥" , "立方" , false , true , true , true , true , "14" ) ,
	EFR ( "电流" , "最新" , 2 , RoundingMode.FLOOR , 99999999L , true , "A" , "安" , true , true , true , true , true , "15" ) ,
	WFR ( "瞬时流量" , "最新" , 2 , RoundingMode.FLOOR , 99999999L , true , "㎥/h" , "流量" , true , true , true , true , true , "16" ) ,
	HFR ( "瞬时热量" , "最新" , 2 , RoundingMode.FLOOR , 99999999L , true , "kJ/h" , "热量" , true , true , true , true , true , "17" ) ,
	EPS ( "电压" , "最新" , 2 , RoundingMode.FLOOR , 99999999L , true , "V" , "伏特" , true , true , true , true , true , "18" ) ,
	WPS ( "压力" , "最新" , 3 , RoundingMode.HALF_EVEN , 99999999L , true , "MPa" , "兆帕" , true , true , true , true , true , "19" ) ,
	WVL ( "液位" , "最新" , 3 , RoundingMode.HALF_DOWN , 99999999L , true , "M" , "米" , false , true , true , true , true , "20" ) ,
	WPH ( "酸碱度" , "最新" , 2 , RoundingMode.FLOOR , 99999999L , true , "PH" , "酸碱" , false , true , true , true , true , "21" ) ,
	WTB ( "浊度" , "最新" , 2 , RoundingMode.FLOOR , 99999999L , true , "NTU" , "浊度" , false , true , true , true , true , "22" ) ,
	WRC ( "余氯" , "最新" , 2 , RoundingMode.FLOOR , 99999999L , true , "PPM" , "毫克升" , false , true , true , true , true , "23" ) ,
	WTP ( "温度" , "平均" , 1 , RoundingMode.FLOOR , 99999999L , true , "℃" , "摄氏度" , false , true , true , true , true , "24" ) ,
	WHD ( "湿度" , "平均" , 1 , RoundingMode.FLOOR , 99999999L , true , "RH" , "克立方米" , false , true , true , true , true , "25" ) ,
	CLV ( "浓度" , "平均" , 1 , RoundingMode.FLOOR , 99999999L , true , "PPB" , "摩尔升" , false , true , true , true , true , "26" ) ,
	FRV ( "频率" , "最新" , 1 , RoundingMode.FLOOR , 99999999L , true , "Hz" , "赫兹" , false , true , true , true , true , "27" ) ,
	ECT ( "电导率" , "最新" , 2 , RoundingMode.FLOOR , 99999999L , true , "S/m" , "西门子米" , false , true , true , true , true , "28" ) ,
	AMA ( "报警量" , "最新" , 2 , RoundingMode.FLOOR , 99999999L , true , "AH" , "警报" , false , true , true , true , true , "29" ) ,
	TFV ( "开关量" , "最新" , 0 , RoundingMode.FLOOR , 99999999L , true , "BOOL" , "真假" , false , true , true , true , true , "30" ) ,
	CTF ( "阈值开关量" , "最新" , 0 , RoundingMode.FLOOR , 99999999L , true , "BOOL" , "真假" , false , true , true , true , true , "31" ) ,
	COD ( "化学需氧量" , "最新" , 2 , RoundingMode.FLOOR , 99999999L , true , "mg/L" , "毫克升" , false , true , true , true , true , "32" ) ,
	DAN ( "总氮" , "最新" , 2 , RoundingMode.FLOOR , 99999999L , true , "mg/L" , "毫克升" , false , true , true , true , true , "33" ) ,
	LIN ( "总磷" , "最新" , 2 , RoundingMode.FLOOR , 99999999L , true , "mg/L" , "毫克升" , false , true , true , true , true , "34" ) ,
	ADA ( "氨氮" , "最新" , 2 , RoundingMode.FLOOR , 99999999L , true , "mg/L" , "毫克升" , false , true , true , true , true , "35" ) ,
	FWO ( "悬浮物" , "最新" , 2 , RoundingMode.FLOOR , 99999999L , true , "mg/L" , "毫克升" , false , true , true , true , true , "36" ) ,
	PWR ( "有功功率" , "最新" , 2 , RoundingMode.FLOOR , 99999999L , true , "kW" , "千瓦" , false , true , true , true , true , "37" ) ,
	PWQ ( "无功功率" , "最新" , 2 , RoundingMode.FLOOR , 99999999L , true , "kVar" , "千乏" , false , true , true , true , true , "38" ) ,
	COS ( "功率因数" , "最新" , 2 , RoundingMode.FLOOR , 99999999L , true , "%" , "百分" , false , true , true , true , true , "39" ) ,
	TFC ( "开关度" , "最新" , 2 , RoundingMode.FLOOR , 99999999L , true , "%" , "度" , false , true , true , true , true , "40" ) ,
	LNG ( "经度" , "最新" , 6 , RoundingMode.FLOOR , 99999999L , true , "°" , "度" , false , true , true , true , true , "41" ) ,
	LAT ( "纬度" , "最新" , 6 , RoundingMode.FLOOR , 99999999L , true , "°" , "度" , false , true , true , true , true , "42" ),;

	private String name ;

	private String type ;

	private int precise ;

	private RoundingMode rounding ;

	private long limit ;

	private boolean monitor ;

	private String unit ;

	private String alias ;

	private boolean c5m ;

	private boolean c1h ;

	private boolean c1d ;

	private boolean c1t ;

	private boolean c1y ;

	private String sort ;

	private CollectDict (
			String name ,
			String type ,
			int precise ,
			RoundingMode rounding ,
			long limit ,
			boolean monitor ,
			String unit ,
			String alias ,
			boolean c5m ,
			boolean c1h ,
			boolean c1d ,
			boolean c1t ,
			boolean c1y ,
			String sort
	)
	{
		this.name = name ;
		this.precise = precise ;
		this.rounding = rounding ;
		this.limit = limit ;
		this.type = type ;
		this.monitor = monitor ;
		this.unit = unit ;
		this.alias = alias ;
		this.c5m = c5m ;
		this.c1h = c1h ;
		this.c1d = c1d ;
		this.c1t = c1t ;
		this.c1y = c1y ;
		this.sort = sort ;
	}

	public String getName ( )
	{
		return name ;
	}

	public void setName (
			String name
	)
	{
		this.name = name ;
	}

	public String getType ( )
	{
		return type ;
	}

	public void setType (
			String type
	)
	{
		this.type = type ;
	}

	public int getPrecise ( )
	{
		return precise ;
	}

	public void setPrecise (
			int precise
	)
	{
		this.precise = precise ;
	}

	public RoundingMode getRounding ( )
	{
		return rounding ;
	}

	public void setRounding (
			RoundingMode rounding
	)
	{
		this.rounding = rounding ;
	}

	public long getLimit ( )
	{
		return limit ;
	}

	public void setLimit (
			long limit
	)
	{
		this.limit = limit ;
	}

	public String getUnit ( )
	{
		return unit ;
	}

	public void setUnit (
			String unit
	)
	{
		this.unit = unit ;
	}

	public String getAlias ( )
	{
		return alias ;
	}

	public void setAlias (
			String alias
	)
	{
		this.alias = alias ;
	}

	public boolean isC5m ( )
	{
		return c5m ;
	}

	public void setC5m (
			boolean c5m
	)
	{
		this.c5m = c5m ;
	}

	public boolean isC1h ( )
	{
		return c1h ;
	}

	public void setC1h (
			boolean c1h
	)
	{
		this.c1h = c1h ;
	}

	public boolean isC1d ( )
	{
		return c1d ;
	}

	public void setC1d (
			boolean c1d
	)
	{
		this.c1d = c1d ;
	}

	public boolean isC1t ( )
	{
		return c1t ;
	}

	public void setC1t (
			boolean c1t
	)
	{
		this.c1t = c1t ;
	}

	public boolean isC1y ( )
	{
		return c1y ;
	}

	public void setC1y (
			boolean c1y
	)
	{
		this.c1y = c1y ;
	}

	public String getSort ( )
	{
		return sort ;
	}

	public void setSort (
			String sort
	)
	{
		this.sort = sort ;
	}

	public boolean isMonitor ( )
	{
		return monitor ;
	}

	public void setMonitor (
			boolean monitor
	)
	{
		this.monitor = monitor ;
	}

	public static String code (
			String code
	)
	{
		for ( CollectDict item : CollectDict.values ( ) )
		{
			if ( item.name ( ).equalsIgnoreCase ( code ) || item.getName ( ).equalsIgnoreCase ( code ) )
			{
				return item.name ( ) ;
			}
		}
		return null ;
	}

	public static Boolean exist (
			String name
	)
	{
		for ( CollectDict item : CollectDict.values ( ) )
		{
			if ( item.name ( ).equalsIgnoreCase ( name ) || item.getName ( ).equalsIgnoreCase ( name ) )
			{
				return true ;
			}
		}
		return false ;
	}
	

}
